package com.aw.manual.ejemplo016;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.ApplicationListener;
import org.springframework.stereotype.Component;

/**
 * User: gmc
 * Date: 07/06/2010
 */
@Component
public class SistemaDeSeguridad implements ApplicationListener<CambioDeVelocidadEvento> {
    private static final int VELOCIDAD_SEGURA_MAXIMA = 150;
    @Autowired
    Freno freno;

    public void onApplicationEvent(CambioDeVelocidadEvento cambioDeVelocidadEvento) {
        int velocidadActual = cambioDeVelocidadEvento.getVelocidad();
        if (velocidadActual > VELOCIDAD_SEGURA_MAXIMA) {
            System.out.println("La velocidad segura fue superada:" + velocidadActual);
            freno.frenar();
        } else {
            System.out.println("Velocidad segura:" + velocidadActual);
        }
    }
}
